package com.dabaozhan.modules.wx_app.entity;

import com.dabaozhan.modules.wx_app.base.AbstractBaseEntity;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;

/**
 * @author houzhong
 * @date 2018-12-26 09:26
 */
public class SiteOrderEntity extends AbstractBaseEntity {

	private static final long serialVersionUID = 1L;

	/**
     * 发送人id
     */
	@NotEmpty(message="userId不能为空")
    private String userId;

    /**
     * 供应商id
     */
	@NotEmpty(message="supplierId不能为空")
    private String supplierId;

	/**
	 * 供应商列表Id
	 */
	@NotEmpty(message="supplierPackerId不能为空")
	private String supplierPackerId;

    /**
     * 联系人
     */
    private String contacts;

    /**
     * 联系电话
     */
    private String telephone;

    /**
     * 订单编号
     */
    private String orderNumber;

    /**
     * 卡号
     */
    private String supplierNumber;

    /**
     * 毛重
     */
    @NotNull(message="grossWeight不能为空")
    private BigDecimal grossWeight;

    /**
     * 皮重
     */
    @NotNull(message="tareWeight不能为空")
    private BigDecimal tareWeight;

    /**
     * 净重
     */
    @NotNull(message="netWeight不能为空")
    private BigDecimal netWeight;

    /**
     * 扣重
     */
    @NotNull(message="offWeight不能为空")
    private BigDecimal offWeight;

    /**
     * 扣重比列
     */
    @NotNull(message="offPointsWeight不能为空")
    private BigDecimal offPointsWeight;

    /**
     * 物品父类分类Id
     */
    @NotEmpty(message="parentId不能为空")
    private String parentId;
    
    /**
     * 物品分类Id
     */
    @NotEmpty(message="categoryId不能为空")
    private String categoryId;

    /**
     * 物品分类名称
     */
    private String categoryName;

    /**
     * 价格
     */
    @NotNull(message="price不能为空")
    private BigDecimal price;

    /**
     * 总价
     */
    @NotNull(message="moneyTotal不能为空")
    private BigDecimal moneyTotal;

    /**
     * 状态:1进站 2定价 3待审核 4未支付 5已结算 6 取消 7 待回皮
     */
    private String orderStatus;

	/**
	 * 支付方式 1 线下 2 微信 3 银行卡 4 余额
	 */
	private String paymentType;

	/**
	 * 支付状态 1 支付成功 2 未支付
	 */
	private Integer paymentStatus;

    /**
     * 审核状态码，1未审核，2已审核
     */
    private Integer orderCheck;

    /**
     * 订单类型1 验货订单 2 扫码订单 3 手工录单
     */
    @NotNull(message="orderType不能为空")
    private Integer orderType;
    
    /**
     * 图片列表
     */
    private List<String> pictureList;

	/**
	 * 返回图片集合
	 */
	private List<SiteOrderImgEntity> pictureImgList;

	/**
	 * 开始时间
	 * @return
	 */
	private Date beginTime;

	/**
	 * 结束时间
	 * @return
	 */
	private Date endTime;

	/**
	 * 供应商手机
	 */
	private String phone;

	/**
	 * 供应商名称
	 */
	private String supplierName;

	/**
	 * 供应商姓名
	 */
	private String name;

	/**
	 * ic卡号
	 */
	private String cardNumber;

	/**
	 * 时间区间 1:全部 2:近7天 3:近1个月 4:近3个月 5:3个月前
	 */
	private Integer timeSection;

	/**
	 * 支付密码
	 */
	private String password;

	public String getUserId() {
		return userId;
	}

	public void setUserId(String userId) {
		this.userId = userId;
	}

	public String getSupplierId() {
		return supplierId;
	}

	public void setSupplierId(String supplierId) {
		this.supplierId = supplierId;
	}

	public String getContacts() {
		return contacts;
	}

	public void setContacts(String contacts) {
		this.contacts = contacts;
	}

	public String getTelephone() {
		return telephone;
	}

	public void setTelephone(String telephone) {
		this.telephone = telephone;
	}

	public String getOrderNumber() {
		return orderNumber;
	}

	public void setOrderNumber(String orderNumber) {
		this.orderNumber = orderNumber;
	}

	public String getSupplierNumber() {
		return supplierNumber;
	}

	public void setSupplierNumber(String supplierNumber) {
		this.supplierNumber = supplierNumber;
	}

	public BigDecimal getGrossWeight() {
		return grossWeight;
	}

	public void setGrossWeight(BigDecimal grossWeight) {
		this.grossWeight = grossWeight;
	}

	public BigDecimal getTareWeight() {
		return tareWeight;
	}

	public void setTareWeight(BigDecimal tareWeight) {
		this.tareWeight = tareWeight;
	}

	public BigDecimal getNetWeight() {
		return netWeight;
	}

	public void setNetWeight(BigDecimal netWeight) {
		this.netWeight = netWeight;
	}

	public BigDecimal getOffWeight() {
		return offWeight;
	}

	public void setOffWeight(BigDecimal offWeight) {
		this.offWeight = offWeight;
	}

	public BigDecimal getOffPointsWeight() {
		return offPointsWeight;
	}

	public void setOffPointsWeight(BigDecimal offPointsWeight) {
		this.offPointsWeight = offPointsWeight;
	}

	public String getParentId() {
		return parentId;
	}

	public void setParentId(String parentId) {
		this.parentId = parentId;
	}

	public String getCategoryId() {
		return categoryId;
	}

	public void setCategoryId(String categoryId) {
		this.categoryId = categoryId;
	}

	public String getCategoryName() {
		return categoryName;
	}

	public void setCategoryName(String categoryName) {
		this.categoryName = categoryName;
	}

	public BigDecimal getPrice() {
		return price;
	}

	public void setPrice(BigDecimal price) {
		this.price = price;
	}

	public BigDecimal getMoneyTotal() {
		return moneyTotal;
	}

	public void setMoneyTotal(BigDecimal moneyTotal) {
		this.moneyTotal = moneyTotal;
	}

	public String getOrderStatus() {
		return orderStatus;
	}

	public void setOrderStatus(String orderStatus) {
		this.orderStatus = orderStatus;
	}

	public Integer getOrderCheck() {
		return orderCheck;
	}

	public void setOrderCheck(Integer orderCheck) {
		this.orderCheck = orderCheck;
	}

	public Integer getOrderType() {
		return orderType;
	}

	public void setOrderType(Integer orderType) {
		this.orderType = orderType;
	}

	public List<String> getPictureList() {
		return pictureList;
	}

	public void setPictureList(List<String> pictureList) {
		this.pictureList = pictureList;
	}

	public static long getSerialVersionUID() {
		return serialVersionUID;
	}

	public String getPhone() {
		return phone;
	}

	public void setPhone(String phone) {
		this.phone = phone;
	}

	public String getSupplierName() {
		return supplierName;
	}

	public void setSupplierName(String supplierName) {
		this.supplierName = supplierName;
	}

	public Date getBeginTime() {
		return beginTime;
	}

	public void setBeginTime(Date beginTime) {
		this.beginTime = beginTime;
	}

	public Date getEndTime() {
		return endTime;
	}

	public void setEndTime(Date endTime) {
		this.endTime = endTime;
	}

	public Integer getTimeSection() {
		return timeSection;
	}

	public void setTimeSection(Integer timeSection) {
		this.timeSection = timeSection;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public List<SiteOrderImgEntity> getPictureImgList() {
		return pictureImgList;
	}

	public void setPictureImgList(List<SiteOrderImgEntity> pictureImgList) {
		this.pictureImgList = pictureImgList;
	}

	public String getPaymentType() {
		return paymentType;
	}

	public void setPaymentType(String paymentType) {
		this.paymentType = paymentType;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	public Integer getPaymentStatus() {
		return paymentStatus;
	}

	public void setPaymentStatus(Integer paymentStatus) {
		this.paymentStatus = paymentStatus;
	}

	public String getCardNumber() {
		return cardNumber;
	}

	public void setCardNumber(String cardNumber) {
		this.cardNumber = cardNumber;
	}

	public String getSupplierPackerId() {
		return supplierPackerId;
	}

	public void setSupplierPackerId(String supplierPackerId) {
		this.supplierPackerId = supplierPackerId;
	}
}
